<%--
  Created by IntelliJ IDEA.
  User: 周欣
  Date: 2021/5/29
  Time: 14:59
  To change this template use File | Settings | File Templates.
--%>
<%@ page import="java.util.Map" %>
<%@ page import="java.util.HashMap" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" errorPage="/error500.jsp" %>
<%--
    errorPage 表示错误后自动跳转去的路径
    这个路径一般都是以斜杠打头，它表示请求地址为http://ip:port/工程路径/  映射到代码的web目录
--%>
<html>
<head>
    <title>jsp</title>
</head>
<body>
    这是jsp页面数据
    <% int o = 10/0; %><%--错误，会跳转到error500.jsp页面上--%>


    <%--1、声明类属性--%>
    <%!
        private Integer id;
        private String name;
        private static Map<String,Object> map;
    %>
    <%--2、声明static静态代码块--%>
    <%!
        static {
            map = new HashMap<String,Object>();
            map.put("key1", "value1");
            map.put("key2", "value2");
            map.put("key3", "value3");
        }
    %>
    <%--3、声明类方法--%>
    <%!
        public int abc(){
            return 12;
        }
    %>
    <%--4、声明内部类--%>
    <%!
        public static class A {
            private Integer id = 12;
            private String abc = "abc";
        }
    %>
<%--------------------------------------------------------------------------------------------%>

    <%--
    表达式脚本的格式是：<%=表达式%>
    表达式脚本的作用是：的 jsp 页面上输出数据。
    表达式脚本的特点：
        1、所有的表达式脚本都会被翻译到_jspService() 方法中
        2、表达式脚本都会被翻译成为 out.print()输出到页面上
        3、由于表达式脚本翻译的内容都在_jspService() 方法中,所以_jspService()方法中的对象都可以直接使用。
        4、表达式脚本中的表达式不能以分号结束。
    --%>
    <%--练习：
    1.输出整型
    2.输出浮点型
    3.输出字符串
    4.输出对象    --%>
    <%=12 %> <br>

    <%=12.12 %> <br>

    <%="我是字符串" %> <br>

    <%=map%> <br>

    <%=request.getParameter("username")%>


    <%--练习：--%>
    <%--1.代码脚本----if 语句--%>
    <%
        int i = 13 ;
        if (i == 12) {
    %>
    <h1>国哥好帅</h1>
    <%
    } else {
    %>
    <h1>国哥又骗人了！</h1>
    <%
        }
    %>
    <br>
    <%--2.代码脚本----for 循环语句--%>
    <table border="1" cellspacing="0">
        <%
            for (int j = 0; j < 10; j++) {
        %>
        <tr>
            <td>第 <%=j + 1%>行</td>
        </tr>
        <%
            }
        %>
    </table>
    <%--3.翻译后java文件中_jspService方法内的代码都可以写--%>
    <%
        String username = request.getParameter("username");
        System.out.println("用户名的请求参数值是：" + username);
    %>

</body>
</html>
